//
//  AppsLocalManager.h
//  AppsTemplate
//
//  Created by Maple on 8/4/14.
//  Copyright (c) 2014 maple. All rights reserved.
//
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@interface AppLocalManager : NSObject{
    
}


//初始化
+ (id)sharedManager;

/**
 * 描述：存储数据
 * 参数：_data:要存储的数据 
 * 参数：_key:要存储的数据的对应名称
 * 返回值：
 */
- (void)saveData:(id)_data andKey:(NSString *)_key;

/**
 * 描述：根据key获取存储数据
 * 参数：_key:要存储的数据的对应名称
 * 返回值：存储的数据
 */
- (id)getDataByKey:(NSString *)_key;


/**
 * 描述：根据key获取删除数据
 * 参数：_key:要删除的数据的对应名称
 */
-(void)DeleteDataByKey:(NSString *)_key;
/**
 * 描述：缓存图片
 * 参数：image:要缓存的图片
 * 参数：name:文件名称
 * 返回值：缓存是否成功
 */
- (BOOL)saveImageToLocal:(NSString *)name image:(UIImage *)image;

/**
 * 描述：缓存图片
 * 参数：imageData:要缓存的图片数据
 * 参数：name:文件名称
 * 返回值：缓存是否成功
 */
- (BOOL)saveImageToLocal:(NSString *)name imageData:(NSData *)imageData;

/**
 * 描述：根据文件名称从缓存空间获取图片
 * 参数：name:文件名称
 * 返回值：缓存的图片
 */
- (UIImage *)getImageFromLocal:(NSString *)name;

/**
 151 1212 3125
 * 描述：判断缓存空间是否存在跟文件名称相同的图片
 * 参数：name:文件名称
 * 返回值：是否存在图片
 */
- (BOOL)imageExists:(NSString *)name;

/**
 * 描述：判断缓存空间大小，如果大过存储空间，则会清理所有缓存，重新建立缓存空间
 * 返回值：
 */
- (void)checkImageCaches;

/**
 * 描述：从缓存空间删除跟文件名称相同的图片
 * 参数：name:文件名称
 * 返回值：
 */
- (void)removeImageFromLocal:(NSString *)name;

/**
 * 描述：得到文件的路径
 * 参数：_fileName:文件名称
 * 参数：_type:文件类型
 * 返回值：文件的路径
 */
+ (NSString*)getPathByFileName:(NSString *)_fileName ofType:(NSString *)_type;

/**
 * 描述：得到文件的路径
 * 参数：_fileName:文件名称
 * 返回值：文件的路径
 */
+ (NSString*)getPathByFileName:(NSString *)_fileName;

/**
 * 描述：得到基本沙盒路径
 * 返回值：沙盒路径
 */
+ (NSString*)getCacheDataDirectory;

/**
 * 描述：从缓存空间删除图片数组
 * 参数：name:文件名称
 * 返回值：
 */
- (void)removeLocalImageList:(NSMutableArray *)imageList;

/*
 * 设置切换啊账号
 */
- (void)changeUser;
/*
 * 是否切换啊账号
 */
- (BOOL)getChangeUser;
@end